BFF Backends For Frontends
Web front-end
のための
Back-end バックエンド
メリット
UX
Performance パフォーマンス
の向上
必要十分な
API
UI
の統一
Micro services マイクロサービス
ドメイン ロジック
に対応した開発
シンプルで再利用しやすい
API
サービスごとに使用技術分けれる
Web Platform App
のためのBFF
メリット
Web front-end
側が欲しい
API
作成
Back-end バックエンド
は、
ドメイン ロジック
に集中
SSR Server Side Rendering
による高速な初期描画
IDL Interface Definition Language
でmock
Server
をつくり
API
ができる前に開発、
API
要項確認可能
デメリット
Web front-end
側の仕事増えてる
レイヤーが増えて開発時間が増える
運用
Back-end バックエンド
の開発待たない
IDL Interface Definition Language
で
API
仕様を書く
これから、コード生成したい
技術
Node.js
がおおい
理由
Web front-end
エンジニア
Web front-end
のために作ること多い
GitHub.icon
IBM/template-node-typescript: Github Template that uses TypeScript with Node.js to create a BFF or Microservice API with Open API Specification
環境構築など参考になりそう
手軽に作るのに良さそう
https://gyazo.com/de0e3bc32994813f7aac825dc9993135
NestJS.icon
GitHub.icon
ablestack/nestjs-bff: A full-stack TypeScript solution, and starter project. Includes an API, CLI, and example client webapp. Features include production grade logging, authorization, authentication, MongoDB migrations, and end-to-end testing.
参考
TypeScriptにおけるgRPC関連ライブラリの比較とプロダクト開発で採用した方法の紹介 - CADDi Tech Blog
TypeScriptでReactとBFFの間の通信にカタをつける | TECHSCORE BLOG
edmolima/awesome-backend-for-frontend: Curated awesome backend for frontend pattern links and materials for study